package com.jz.netthings.application.sample.service;

import com.baomidou.mybatisplus.plugins.Page;
import com.jz.netthings.application.bodyCheck.bean.MyPage;
import com.jz.netthings.application.sample.bean.AssayPrintSupport;
import com.jz.netthings.application.sample.bean.PlasmaSamples;
import com.baomidou.mybatisplus.service.IService;
import com.jz.netthings.bean.system.JyUser;
import com.jz.netthings.exception.AdscmSystemException;

import java.lang.reflect.Type;
import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author lzf
 * @since 2019-03-12
 */
public interface PlasmaSamplesService extends IService<PlasmaSamples> {

    MyPage<PlasmaSamples> queryAll(Integer currentPage, Integer pageSize) throws AdscmSystemException;

    /**
     * 查询当天的所有
     * @param currentPage
     * @param pageSize
     * @return
     * @throws AdscmSystemException
     */
    MyPage<PlasmaSamples> queryCurrentDays(Integer currentPage, Integer pageSize) throws AdscmSystemException;

    Page<PlasmaSamples> queryByNameAndNo(String name, String small, Integer currentPage, Integer pageSize, String type,String time) throws AdscmSystemException;

    Integer updateAll(String plasmaSamples, JyUser user) throws AdscmSystemException;
    Integer updateAll(PlasmaSamples plasmaSamples, JyUser user) throws AdscmSystemException;

    PlasmaSamples selectPlasmaSampleByProviderNo(String probiderNo) throws AdscmSystemException;

    /**
     * 查询血红蛋白含量，根据日期，用于报表打印
     * @param date
     * @param printType 打印类型 1：血红蛋白含量，2：血红蛋白检测，3：化检记录表
     * @return
     */
    AssayPrintSupport selectPrintList(String date,int printType) throws AdscmSystemException;
}
